package com.zzyl.controller;

import com.zzyl.base.ResponseResult;
import com.zzyl.dto.BedDto;
import com.zzyl.service.BedService;
import com.zzyl.vo.BedVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController
@RequestMapping("/bed")
@Api(tags = "床位管理相关接口")
public class BedController extends BaseController {

    @Autowired
    private BedService bedService;



//    @GetMapping("/read/room/{roomId}")
//    @ApiOperation(value = "根据房间id查询床位", notes = "传入房间id")
//    public ResponseResult<List<BedVo>> readBedByRoomId(
//            @ApiParam(value = "房间ID", required = true) @PathVariable("roomId") Long roomId) {
//        List<BedVo> beds = bedService.getBedsByRoomId(roomId);
//        return success(beds);
//    }
//
//    /**
//     * 新增床位
//     * @param bedDto
//     * @return
//     */
//    @PostMapping("/create")
//    @ApiOperation("新增床位")
//    public ResponseResult create(@RequestBody @ApiParam("新增床位信息") BedDto bedDto) {
//        bedService.create(bedDto);
//        return success();
//    }
//
//    /**
//     * 根据id查询床位
//     * @param id
//     * @return
//     */
//    @GetMapping("/read/{id}")
//    @ApiOperation(("根据id查询床位"))
//    public ResponseResult<BedVo> GetBedById(@PathVariable @ApiParam("查询id")  Long id){
//        BedVo bedVo =  bedService.GetBedById(id);
//        return success(bedVo);
//    }
//    /**
//     * 更新床位
//     */
//    @PutMapping("/update")
//    @ApiOperation("更新床位")
//    public ResponseResult updateBed(@RequestBody @ApiParam("更新床位信息") BedDto bedDto){
//        bedService.updateBed(bedDto);
//        return success();
//    }
//
//    /**
//     * 删除床位
//     * @param id
//     * @return
//     */
//    @DeleteMapping("delete/{id}")
//    @ApiOperation("删除床位")
//    public ResponseResult deleteBed(@PathVariable @ApiParam("删除床位id") Long id){
//        bedService.deleteBed(id);
//        return success();
//    }
    @PutMapping("update")
    @ApiOperation("跟新床位")
    public ResponseResult update(@RequestBody BedDto bedDto) {
        bedService.updatebed(bedDto);
        return ResponseResult.success();
    }

    @GetMapping("/read/room/{Id}")
    @ApiOperation(("根据id查询床位"))
    public ResponseResult selectBed(@PathVariable Integer Id){
        BedVo bedVo = bedService.selectbed(Id);
        return ResponseResult.success(bedVo);
    }
    @DeleteMapping("delete/{id}")
    public ResponseResult deleteBed(@PathVariable  Long id){
        bedService.deleteBed(id);
        return success();
    }

    /**
     * 新增床位
     * @param bedDto
     * @return
     */
    @PostMapping("/create")
    @ApiOperation("新增床位")
    public ResponseResult createBed(@RequestBody @ApiParam("新增床位信息") BedDto bedDto) {
        int rows = bedService.create(bedDto);
        return toAjax(rows);
    }
}
